The present exemplary embodiments broadly relate to the art of marking systems and, more particularly, to a method and system for ordering a job queue of a marking system. Such embodiments find particular application and use in association with maximizing productivity and utilization of redundant capabilities of multi-engine marking systems, and is discussed herein with particular reference thereto. However, it is to be understood that the present exemplary embodiments are capable of broad use and are amenable for use in other applications and environments, including single-engine marking systems.
It is well understood that image marking systems of a great variety of types, kinds and configurations can receive, process and output a significant quantity of print jobs over the course of a normal period of operation. As such, it is common for numerous print jobs to be in queue for processing by an associated marking system at any given time. Additionally, many such image marking systems include a memory or storage component that receives and holds the print jobs and/or data associated therewith prior to the same being released for processing by the image marking system. In some alternate arrangements, such a job processing queue can be provided by an associated computer system or network.
Known printing systems typically process print jobs from the job queue in the order that the same are received by the printing system. Normally, this is done without taking into consideration the state of the printing system itself and/or the components thereof. As a result, the printing system might be incapable of outputting certain print jobs in the print queue due to a depleted state or condition of one or more of the system components, though the printing system is not normally aware of this potential problem. That is, known printing systems do not consider the depleted functions or states of the system and/or its components in deciding which print job to output next. Rather, known printing systems typically operate on a first-in, first-out basis.
It will be appreciated, then, that the print queue of a printing system could, at any given time, be storing some print jobs that can be output by the system, other print jobs that cannot be run at all by the printing system, and still others that can be output by the printing system but which will cause the system to operate in an inefficient manner. Because typical printing systems do not consider the depletion of function of its components, such systems cannot sort or otherwise determine which of the print jobs pending within the job queue can be run at a normal or high efficiency, which print jobs can be run, but at a lower level of efficiency, and which print jobs cannot be run at all. Thus, print job throughput is not maximized based upon the state of the printing system, and undue delays and reduced performance can result.
As an example, consider a color printer having a low black toner level and numerous print jobs stored in a print queue waiting to be output by the color printer. Known printing systems will likely output an earlier-received, multi-page, black-and-white print job before processing any later-received, multi-page, color print jobs, because no consideration is normally paid to the operational status or depletion level of the printing system and/or its components. Consider, then, that the color printer processes and outputs the earlier-received, black-and-white print job first, and as a result the black toner becomes fully depleted. One disadvantage of such an arrangement is that in many cases this fully depleted condition will occur during the print job itself. This will cause the print job to halt and likely cause the printing system enter a non-functional state. Another disadvantage is that the other pending print jobs, such as the numerous color print jobs, might have only required some minimal amount of black toner. Thus, the depleted black toner level might have been sufficient to produce these print jobs. Unfortunately, the printing system will by this point either be in a non-operational condition or the black toner level will be sufficiently depleted that the remaining print jobs can no longer be produced and, thus, remain in the queue until the printer is restored to an operable condition.
Recently, image marking systems that include and/or utilize multiple marking engines have been developed, and can provide increases in efficiency and performance over single engine marking systems. Such image marking systems are referred to by a variety of names, such as “tandem engine” machines and/or systems, “parallel printers”, “output merger” systems, “interposer” systems, and “cluster printing” systems, for example. These types of systems can take a wide variety of forms and/or configurations. However, each of these types of systems utilizes multiple marking engines to produce printed output.
There are numerous benefits and advantages of using an image marking system that includes or utilizes multiple marking engines. Such benefits and advantages can include higher output rates, greater efficiency and increased production capabilities for example. Another advantage of multi-engine systems, which is not attainable with single engine marking systems, is the ability of a printing system to route a print job or portion thereof away from a marking engine that is not fully operational to a different marking engine that is suitably operational so that the print job can be completed. Basically, multiple engine marking systems will often have redundant capabilities, often including two or more marking engines that have a particular output capability. Though there may be some reduction in performance and/or efficiency by diverting a portion of a print job from a not fully operational engine to a fully operational engine, the marking system can continue to operate and produce output by taking advantage of these redundant capabilities.
One difficulty with such multiple engine image marking systems, however, is that known processes and algorithms for organizing and re-ordering the print queue of single engine marking systems are generally unsuited for use in multiple engine marking systems. This is due, at least in part, to the inability of these processes and algorithms to take advantage of the redundant capabilities of multiple marking engine systems. What's more, processes and/or algorithms associated with the operation of multiple engine marking systems are often directed toward taking full advantage of the parallel processing capabilities of these systems, and rely on the increased capacity of the multiple marking engines to provide the desired increases in performance. That is, these processes and/or algorithms tend to focus on the immediate production of the print job at hand, and typically do not provide for optimizing or otherwise re-ordering or organizing the jobs in the print queue.